package com.enjoyor.soa.traffic.api.service.dubbo.psms;

import java.util.List;

import com.enjoyor.soa.traffic.api.dto.psms.GirdInfoDto;
import com.enjoyor.soa.traffic.api.dto.psms.RespareaGridRltDto;
import com.enjoyor.soa.traffic.api.dto.psms.RespareaPostRltDto;
import com.enjoyor.soa.traffic.api.dto.psms.ResponseareaInfoDto;
import com.enjoyor.soa.traffic.util.pojo.Page;
import com.enjoyor.soa.traffic.util.pojo.ResultPojo;

/**
 * 
 * @ClassName: DubboResponseareaInfoGirdService
 * @Description: TODO(这里用一句话描述这个类的作用)
 * @author yrch 961774545@qq.com
 * @date 2017年11月21日 下午4:59:25
 *
 */

public interface DubboResponseareaInfoGirdService {

	// 责任区
	/**
	 * 删除责任区信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param respId
	 *            责任区编号
	 * @param respName
	 *            责任区名称
	 * @param deptId
	 *            所属部门名称，多个用逗号隔开
	 * @param effective
	 *            是否有效
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo removeResponseareaInfo(String token, String systemKey, String respId, String respName,
			String deptId, String effective, String user, String ip, String sysName);

	/**
	 * 保存责任区信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param responseareaInfoDto
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo saveResponseareaInfo(String token, String systemKey, ResponseareaInfoDto responseareaInfoDto,
			String user, String ip, String sysName);

	/**
	 * 查询责任区信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param respId
	 * @param respName
	 * @param deptId
	 * @param effective
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo listResponseareaInfo(String token, String systemKey, String respId, String respName,
			String deptId, String effective, String user, String ip, String sysName);

	/**
	 * 查询责任区分页信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param respId
	 * @param respName
	 * @param deptId
	 * @param effective
	 * @param page
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public ResultPojo pageResponseareaInfo(String token, String systemKey, String respId, String respName,
			String deptId, String effective, Page page, String user, String ip, String sysName);

	/**
	 * 修改责任区信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param responseareaInfoDto
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo modifyResponseareaInfo(String token, String systemKey, ResponseareaInfoDto responseareaInfoDto,
			String user, String ip, String sysName);

	// 责任区岗位关联
	/**
	 * 删除责任区岗位关联
	 * 
	 * @param token
	 * @param systemKey
	 * @param respReleteId
	 * @param postId
	 * @param respareaId
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo removeRespareaPostRlt(String token, String systemKey, String respReleteId, String postId,
			String respareaId, String user, String ip, String sysName);

	/**
	 * 保存责任区岗位关联
	 * 
	 * @param token
	 * @param systemKey
	 * @param listRespareaPostRltDto
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo saveListRespareaPostRlt(String token, String systemKey,
			List<RespareaPostRltDto> listRespareaPostRltDto, String user, String ip, String sysName);

	/**
	 * 查询责任区岗位关联
	 * 
	 * @param token
	 * @param systemKey
	 * @param respReleteId
	 * @param postId
	 * @param respareaId
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo listRespareaPostRlt(String token, String systemKey, String respReleteId, String postId,
			String respareaId, String user, String ip, String sysName);

	/**
	 * 分页查询责任区岗位关联
	 * 
	 * @param token
	 * @param systemKey
	 * @param respReleteId
	 * @param postId
	 * @param respareaId
	 * @param page
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public ResultPojo pageRespareaPostRlt(String token, String systemKey, String respReleteId, String postId,
			String respareaId, Page page, String user, String ip, String sysName);

	/**
	 * 修改责任区岗位关联
	 * 
	 * @param token
	 * @param systemKey
	 * @param respareaPostRltDto
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo modifyRespareaPostRlt(String token, String systemKey, RespareaPostRltDto respareaPostRltDto,
			String user, String ip, String sysName);

	// 网格
	/**
	 * 删除网格信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param girdId
	 * @param girdName
	 * @param deptId
	 * @param effective
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo removeGirdInfo(String token, String systemKey, String girdId, String girdName, String deptId,
			String effective, String user, String ip, String sysName);

	/**
	 * 保存网格信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param girdInfoDto
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo saveGirdInfo(String token, String systemKey, GirdInfoDto girdInfoDto, String user, String ip,
			String sysName);

	/**
	 * 查询网格信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param girdId
	 * @param girdName
	 * @param deptId
	 * @param effective
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo listGirdInfo(String token, String systemKey, String girdId, String girdName, String deptId,
			String effective, String user, String ip, String sysName);

	/**
	 * 分页查询网格信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param girdId
	 * @param girdName
	 * @param deptId
	 * @param effective
	 * @param page
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public ResultPojo pageGirdInfo(String token, String systemKey, String girdId, String girdName, String deptId,
			String effective, String resPerson, Page page, String user, String ip, String sysName);

	/**
	 * 
	 * @param token
	 * @param systemKey
	 * @param girdInfoDto
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo modifyGirdInfo(String token, String systemKey, GirdInfoDto girdInfoDto, String user, String ip,
			String sysName);

	// 网格责任区关联
	/**
	 * 删除网格责任区关联信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param gridReleteId
	 * @param gridId
	 * @param respareaId
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo removeRespareaGridRlt(String token, String systemKey, String gridReleteId, String gridId,
			String respareaId, String user, String ip, String sysName);

	/**
	 * 保存网格责任区关联信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param listRespareaGridRltDto
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo saveListRespareaGridRlt(String token, String systemKey,
			List<RespareaGridRltDto> listRespareaGridRltDto, String user, String ip, String sysName);

	/**
	 * 查询网格责任区关联信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param gridReleteId
	 * @param gridId
	 * @param respareaId
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo listRespareaGridRlt(String token, String systemKey, String gridReleteId, String gridId,
			String respareaId, String user, String ip, String sysName);

	/**
	 * 分页查询网格责任区关联信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param gridReleteId
	 * @param gridId
	 * @param respareaId
	 * @param page
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public ResultPojo pageRespareaGridRlt(String token, String systemKey, String gridReleteId, String gridId,
			String respareaId, Page page, String user, String ip, String sysName);

	/**
	 * 修改网格责任区关联信息
	 * 
	 * @param token
	 * @param systemKey
	 * @param respareaGridRltDto
	 * @param user
	 * @param ip
	 * @param sysName
	 * @return
	 */
	public ResultPojo modifyRespareaGridRlt(String token, String systemKey, RespareaGridRltDto respareaGridRltDto,
			String user, String ip, String sysName);

}
